package com.yunkeji.api.call.bo;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.Getter;
import lombok.ToString;

/** @author 老张 */
@Data
@ToString
public class RtcRecordCallBackBo {
    /** 事件类型 @see EventType */
    @JsonProperty(value = "EventType")
    private Integer EventType;

    @JsonProperty(value = "EventInfo")
    private EventInfo EventInfo;
    /**
     * 事件信息
     *
     * @author 老张
     */
    @Data
    public class EventInfo {
        /** 房间名（类型与客户端房间号类型一致） */
        @JsonProperty(value = "RoomId")
        private String RoomId;
        /** 录制 ID，一次云端录制任务唯一的 ID */
        @JsonProperty(value = "TaskId")
        private String TaskId;
    }

    /**
     * 事件类型 https://cloud.tencent.com/document/product/647/81113
     *
     * @author 老张
     */
    @AllArgsConstructor
    @Getter
    public enum EventType {
        云端录制模块退出(302),
        M3U8生成(307);
        private Integer code;
    }
}
